
*The Long-run Impact of Childhood Wartime Violence on Preferences for Nuclear Proliferation
*James D. Kim
*Date: 01/31/2023

**Original survey data are available on the website of the Korea Social Science Data Archive (https://kossda.snu.ac.kr).
**Original survey data and codebook are written in Korean, and they are translated by the author. 
**The data provided for replication are adjusted from the original data by the author. 
**For any questions about the data, please contact the author. 

use JDKim23-NuclearProliferation, clear
sort id year
eststo clear

** Main model
** Interactive model (Model 1&2: dummy explanatory variable, Model 3&4: continuous explanatory variable) 
mixed nuclear i.riskyarea##i.prewar_cohort3 male age i.year|| riskyarea:
eststo model1
mixed nuclear i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model2
mixed nuclear c.casualty_rate##i.prewar_cohort3 male age i.year || riskyarea:
eststo model3
mixed nuclear c.casualty_rate##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year || riskyarea:
eststo model4

esttab using table1.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Testing hypothesis 1. ///
\label{reg1})


** Marginal effects plot (Figure 2) 
mixed nuclear i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year|| riskyarea:
margins, dydx(riskyarea) at(prewar_cohort==(0 1))
marginsplot

* Marginal effects plot for continuous independent variable
*mixed nuclear c.casualty_rate##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year || riskyarea:
*margins, dydx(casualty_rate) at(prewar_cohort==(0 1))
*marginsplot

** Mechanisms (Figure 3) 
logit nkp_nuclear i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year, robust cluster(year)
margins, dydx(riskyarea) at(prewar_cohort==(0 1))
marginsplot 

logit us_coop i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year, robust cluster(year)
margins, dydx(riskyarea) at(prewar_cohort==(0 1))
marginsplot 

graph use mechanism1
graph use mechanism2
graph combine mechanism1 mechanism2


*** Online Appendix
** Appendix Table 1
** Using four mutually exclusive explanatory variables (risky vs. non-risky area) 
mixed nuclear prewar_risky postwar_risky postwar_norisky male age i.year|| riskyarea:
eststo model1
mixed nuclear prewar_risky postwar_risky postwar_norisky male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model2
mixed nuclear prewar_norisky postwar_risky male age i.year|| riskyarea:
eststo model3
mixed nuclear prewar_risky prewar_norisky postwar_risky male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model4

esttab using table2.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Four dummy variables approach. ///
\label{reg2})


** Appendix Table 2: Excluding movers
mixed nuclear i.riskyarea##i.prewar_cohort3 male age i.year if mover == 0 || riskyarea:
eststo model1
mixed nuclear i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year if mover == 0 || riskyarea:
eststo model2
mixed nuclear c.casualty_rate##i.prewar_cohort3 male age i.year if mover == 0 || riskyarea:
eststo model3
mixed nuclear c.casualty_rate##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year if mover == 0 || riskyarea:
eststo model4

esttab using table3.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Regression Analysis Excluding Movers ///
\label{reg3})


**Appendix Table 3(Various year ranges for pre-war and post-war cohorts)
mixed nuclear i.riskyarea##i.prewar_cohort4 male age i.year || riskyarea: 
eststo model1
mixed nuclear i.riskyarea##i.prewar_cohort2 male age i.year || riskyarea:
eststo model2
mixed nuclear i.riskyarea##i.prewar_cohort male age i.year || riskyarea:
eststo model3
mixed nuclear i.riskyarea##i.prewar_cohort6 male age i.year || riskyarea:
eststo model4

esttab using table4.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Regression Analysis Excluding Movers ///
\label{reg4})


**Appendix Table 4 (Various year ranges for pre-war and post-war cohorts)
mixed nuclear i.riskyarea##i.prewar_cohort4 male age i.year pid edu income unemployed religiosity || riskyarea: 
eststo model1
mixed nuclear i.riskyarea##i.prewar_cohort2 male age i.year pid edu income unemployed religiosity || riskyarea:
eststo model2
mixed nuclear i.riskyarea##i.prewar_cohort male age i.year pid edu income unemployed religiosity || riskyarea:
eststo model3
mixed nuclear i.riskyarea##i.prewar_cohort6 male age i.year pid edu income unemployed religiosity || riskyarea:
eststo model4

esttab using table5.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Regression Analysis Excluding Movers ///
\label{reg5})


**Appendix Table 5: Alternate Risk Area variable
mixed nuclear i.riskyarea_75##i.prewar_cohort3 male age i.year || riskyarea: 
eststo model1
mixed nuclear i.riskyarea_75##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year|| riskyarea: 
eststo model2
mixed nuclear i.riskyarea_25##i.prewar_cohort3 male age i.year|| riskyarea: 
eststo model3
mixed nuclear i.riskyarea_25##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year|| riskyarea: 
eststo model4

esttab using table6.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Riskier Area Above $75^{th}$ Percentile of Casualty Rate ///
\label{reg6})


**Appendix Table 6 (Placebo test - cultural diversity preference) 
mixed diversity i.riskyarea##i.prewar_cohort3 male age i.year if year>2012  || riskyarea: 
eststo model1
mixed diversity i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year if year>2012 || riskyarea: 
eststo model2
mixed diversity c.casualty_rate##i.prewar_cohort3 male age i.year if year>2012 || riskyarea:
eststo model3
mixed diversity c.casualty_rate##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year if year>2012 || riskyarea:
eststo model4

esttab using table7.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Regression Analysis of Wartime Violence and Cultural Diversity Preferences ///
\label{reg7})


**Appendix Table 7 (Palcebo test - unemployment rate view)  
mixed unrate i.riskyarea##i.prewar_cohort3 male age i.year if year>2012 || riskyarea:
eststo model1
mixed unrate i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year if year>2012 || riskyarea:
eststo model2
mixed unrate c.casualty_rate##i.prewar_cohort3 male age i.year if year>2012 || riskyarea:
eststo model3
mixed unrate c.casualty_rate##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year if year>2012 || riskyarea:
eststo model4

esttab using table8.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Regression Analysis of Wartime Violence and Seriousness of Unemployment Problem ///
\label{reg8})


**Appendix Table 8 and 9 (Palcebo test - arbitrary age groups) 
**Years picked by the random number generator
**1967-76 vs. 1977-1986 
gen arb_cohort1 = .
recode arb_cohort1 .=1 if birthyear >1966 & birthyear< 1977
recode arb_cohort1 .=0 if birthyear >1976 & birthyear < 1987

**1981-90 vs. 1991-2000 
gen arb_cohort2 = .
recode arb_cohort2 .=1 if birthyear >1980 & birthyear< 1991
recode arb_cohort2 .=0 if birthyear >1990 & birthyear < 2001

**1970-79 vs. 1980-1989
gen arb_cohort3 = .
recode arb_cohort3 .=1 if birthyear >1969 & birthyear< 1980
recode arb_cohort3 .=0 if birthyear >1979 & birthyear < 1990

**1975-84 vs. 1985-1994
gen arb_cohort4 = .
recode arb_cohort4 .=1 if birthyear >1974 & birthyear< 1985
recode arb_cohort4 .=0 if birthyear >1984 & birthyear < 1995

mixed nuclear i.riskyarea##i.arb_cohort1 male age i.year|| riskyarea:
eststo model1
mixed nuclear i.riskyarea##i.arb_cohort2 male age i.year|| riskyarea:
eststo model2
mixed nuclear i.riskyarea##i.arb_cohort3 male age i.year|| riskyarea:
eststo model3
mixed nuclear i.riskyarea##i.arb_cohort4 male age i.year|| riskyarea:
eststo model4

** Appendix Table 8
esttab using table9.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Regression Analysis with Arbitrary Age Cohorts (Without Post-treatment Control Variables) ///
\label{reg9})


**Appendix Table 9 
mixed nuclear i.riskyarea##i.arb_cohort1 male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model1
mixed nuclear i.riskyarea##i.arb_cohort2 male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model2
mixed nuclear i.riskyarea##i.arb_cohort3 male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model3
mixed nuclear i.riskyarea##i.arb_cohort4 male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model4

esttab using table10.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Regression Analysis with Arbitrary Age Cohorts (With All Control Variables) ///
\label{reg10})


**Appendix Table 10: pre-war cohort vs. post-war cohort (OLS is used because there is no regional variable)
reg nuclear prewar_cohort3 male age i.year, robust cluster(year)
eststo model1
reg nuclear prewar_cohort3 male age pid edu income unemployed religiosity i.year, robust cluster(year)
eststo model2
reg nuclear prewar_cohort5 male age i.year, robust cluster(year)
eststo model3
reg nuclear prewar_cohort5 male age pid edu income unemployed religiosity i.year, robust cluster(year)
eststo model4

esttab using table11.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik.") ///
title(Pre-war vs. Post-war Cohorts ///
\label{reg11})


**Appendix Table 11: pre-war cohort vs. post-war cohort by risk are (using mutually exclusive explanatory variables approach) 
mixed nuclear prewar_risky prewar_norisky postwar_norisky male age i.year|| riskyarea:
eststo model1
mixed nuclear prewar_risky prewar_norisky postwar_norisky male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model2
mixed nuclear prewar_risky prewar_norisky postwar_risky male age i.year|| riskyarea:
eststo model3
mixed nuclear prewar_risky prewar_norisky postwar_risky male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model4

esttab using table12.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Pre-war vs. Post-war Cohorts by Risk Area ///
\label{reg12})


*** Appendix Table 12 (Historic legacies of violence) 
** Four dummy variables (risky vs. non-risky area) 
mixed trust prewar_risky postwar_risky postwar_norisky male age i.year|| riskyarea:
eststo model1
mixed trust prewar_risky postwar_risky postwar_norisky male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model2
mixed trust prewar_risky prewar_norisky postwar_risky male age i.year|| riskyarea:
eststo model3
mixed trust prewar_risky prewar_norisky postwar_risky male age pid edu income unemployed religiosity i.year|| riskyarea:
eststo model4

esttab using table13.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Historic Legacies of Violence. ///
\label{reg13})


** Appedix Table 13 (Excluding Seoul residents) 
mixed nuclear i.riskyarea##i.prewar_cohort3 male age i.year if region_15 != 1 || riskyarea:
eststo model1
mixed nuclear i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year if region_15 != 1|| riskyarea:
eststo model2
mixed nuclear c.casualty_rate##i.prewar_cohort3 male age i.year if region_15 != 1|| riskyarea:
eststo model3
mixed nuclear c.casualty_rate##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year if region_15 != 1|| riskyarea:
eststo model4

esttab using table14.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Regression Analysis Excluding Seoul Residents During Childhood ///
\label{reg14})


**Appendix Table 14 (entire South Korean public: OLS is used because there is no regional variable)
eststo clear
reg nuclear male age pid edu income unemployed religiosity i.year, robust cluster(year)
eststo model1

esttab using table15.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Regression Analysis of Entire South Korean Public ///
\label{reg15})


** Appendix Table 15: Excluding people born before 1945
mixed nuclear i.riskyarea##i.prewar_cohort3 male age i.year if birthyear >1945 || riskyarea:
eststo model1
mixed nuclear i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year if birthyear >1945 || riskyarea:
eststo model2
mixed nuclear c.casualty_rate##i.prewar_cohort3 male age i.year if birthyear>1945 || riskyarea:
eststo model3
mixed nuclear c.casualty_rate##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year if birthyear>1945 || riskyarea:
eststo model4

esttab using table16.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Excluding people born before 1945 ///
\label{reg16})


** Appendix Table 16: OLS analysis
reg nuclear i.riskyarea##i.prewar_cohort3 male age i.year
eststo model1
reg nuclear i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year
eststo model2
reg nuclear c.casualty_rate##i.prewar_cohort3 male age i.year
eststo model3
reg nuclear c.casualty_rate##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year
eststo model4

esttab using table17.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(OLS Model Analysis ///
\label{reg17})


** Appendix Table 17: Multinomial Logit Analysis
mlogit nuclear i.riskyarea##i.prewar_cohort3 male age i.year, base(2) 
eststo model1
mlogit nuclear i.riskyarea##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year, base(2) 
eststo model2
mlogit nuclear c.casualty_rate##i.prewar_cohort3 male age i.year, base(2) 
eststo model3
mlogit nuclear c.casualty_rate##i.prewar_cohort3 male age pid edu income unemployed religiosity i.year, base(2) 
eststo model4

esttab using table18.tex, replace label se nodepvars ///
star(+ 0.10 * 0.05 ** .01 *** .001) nogaps scalars("N Obs." "ll Log Lik." ) ///
title(Multinomial Logit Model Analysis ///
\label{reg18})
